Field
Various different embodiments relate to instructions, methods of executing the instructions, execution units to execute the instructions, or devices incorporating such execution units. In particular, various different embodiments relate to multiply instructions for which execution completes without writing a carry flag, methods of executing the instructions, execution units to execute the instructions, or devices incorporating such execution units.
Background Information
Multiply instructions are commonly included in instruction set architectures (ISAs). The multiply instructions allow devices to multiply data.
One known multiply instruction is the MUL—Unsigned Multiply instruction. The MUL instruction is described in the Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 2A: Instruction Set Reference, A-M, Order Number: 253666-032US, September 2009, as well as in various older manuals.
In addition to causing multiplication, the MUL instruction also modifies the carry flag (CF) and the overflow flag (OF). If the high-order bits of the product/result are 0, the carry and overflow flags are cleared, otherwise, the carry and overflow flags are set. In certain instances, there are significant drawbacks to such modification of the overflow and/or carry flags. As one example, this may tend to reduce the speed and/or efficiency of large number multiplication and certain other data processing.
Due to the importance of quickly and efficiently processing data, new and different multiply instructions would be useful.